package maxinshiSomeipTool20.GUI.common;

import maxinshiSomeipTool20.common.itfSafeSWT.BaseScene;
import maxinshiSomeipTool20.GUI.packages.dataType.DatatypeScene;

/**
 * 场景工厂：负责创建具体场景，解耦SceneManager与具体场景的依赖
 * 后续新增场景只需扩展此类，无需修改SceneManager
 */
public class SceneFactory {
    // 场景类型常量（统一管理）
    public static final int TYPE_DATATYPE = 0;
    public static final int TYPE_RECORD = 1;    // 预留
    public static final int TYPE_ARRAY = 2;     // 预留

    /** 根据类型创建场景 */
    public static BaseScene createScene(int sceneType) {
        switch (sceneType) {
            case TYPE_DATATYPE:
                return new DatatypeScene();
            // 后续添加其他场景
            // case TYPE_RECORD: return new RecordScene();
            default:
                throw new IllegalArgumentException("未知场景类型: " + sceneType);
        }
    }
}